using System;
using System.Collections.Generic;
using SinBiota.Model.Entities;

namespace SinBiota.Model.Business.PersistenceServices.Interfaces
{
    public interface IDepositaryUnitPersistenceServices
    {
        DepositaryUnit FindById(int id);
        IList<DepositaryUnit> FindAll();
        void Delete(DepositaryUnit depositaryUnit);
        void DeleteById(int id);
        void Save(DepositaryUnit depositaryUnit);
        void Update(DepositaryUnit depositaryUnit);
        DepositaryUnit FindByExactName(string name);
        IList<DepositaryUnit> FindByNameLike(string name);
        DepositaryUnitRecord FindRecordById(int depositaryUnitRecordId);
        DepositaryUnit FindByExactNameOrCreate(string depositaryUnit);
        void SaveRecord(DepositaryUnitRecord depositaryUnitRecord);
        void DeleteRecord(DepositaryUnitRecord depositaryUnitRecord);
    }
}